package com.deve.pig.service.merchant;

import com.deve.pig.model.MerchantImages;
import com.deve.pig.model.MerchantImagesExample;

import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;

import my.utils.Pagination;
import org.apache.ibatis.annotations.Param;

public interface IMerchantImagesService {
    /**
     * @param entity
     * @Description: 添加实体
     */
    int add(MerchantImages entity);

    /**
     * @param example
     * @Description: 根据条件删除
     */
    int delete(MerchantImagesExample example);

    /**
     * @param id
     * @Description: 根据主键删除
     */
    int delete(int id);

    /**
     * @param entity
     * @Description: 更新实体
     */
    int update(MerchantImages entity);

    /**
     * @param example
     * @param record
     * @Description: 更新实体
     */
    int updateByExampleSelective(MerchantImages record, MerchantImagesExample example);

    /**
     * @param queryMap    查询参数
     * @param currentPage 当前页
     * @param pageSize    每页大小
     * @Description: 根据参数集按页查询
     */
    Pagination findPagination(Map<String, Object> queryMap, int currentPage, int pageSize);

    /**
     * @param id
     * @Description: 根据主键查询
     */
    MerchantImages findById(int id);

    /**
     * @Description: 查询所有数据
     */
    List<MerchantImages> findAll();

    /**
     * @Description: 根据条件查询
     */
    List<MerchantImages> findByCriteria(MerchantImagesExample criteria);

    /**
     * @Description: 获取导出到Excel的数据
     */
    @SuppressWarnings("unchecked")
    LinkedHashMap<String, List> getExportData();

    /**
     * @Description: 根据条件查询数量
     */
    int countByExample(MerchantImagesExample example);
}